package com.qfedu.meidijiaju.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author meidimeiju
 * @since 2022-10-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class CardYxy implements Serializable {

    private static final long serialVersionUID=1L;

    /**
     * 帖子id
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "帖子id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 帖子类型
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "帖子类型")
    private Integer type;

    /**
     * 作者id
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "作者id")
    private Integer authorId;

    /**
     * 标题
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "标题")
    private String title;

    /**
     * 内容
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "内容")
    private String content;

    /**
     * 评论数
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "评论数")
    private Integer comments;

    /**
     * 点赞数
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "点赞数")
    private Integer likes;

    /**
     * 播放量
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @ApiModelProperty(value = "播放量")
    private Integer play;

    /**
     * 作者
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private AuthorYxy author;

    /**
     * 标题标签
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonIgnore //返回json 数据时 忽略 该 字段
    @TableField(exist = false)
    private List<TitletagsYxy> titleTagList;

    /**
     * 标题标签
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private List<String> titleTags;

    /**
     * 图片列表
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonIgnore //返回json 数据时 忽略 该 字段
    @TableField(exist = false)
    private List<ImgsYxy> imgList;

    /**
     * 图片列表
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private List<String> imgs;

    /**
     * 活动标签
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonIgnore //返回json 数据时 忽略 该 字段
    @TableField(exist = false)
    private List<ContenttagsYxy> contentTagList;

    /**
     * 活动标签
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private List<String> contentTags;

    /**
     * 视频列表
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonIgnore //返回json 数据时 忽略 该 字段
    @TableField(exist = false)
    private List<VideosYxy> videoYxyList;

    /**
     * 视频列表
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private List<String> videos;

    /**
     * 评论列表
     */
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private List<CommentsYxy> commentsList;

}
